The present invention relates to audio applications in general and, in particular, to music-based searching.
Often, it may be desirable to find an audio sample, an album track, or other audio information when textual information about the audio (e.g., artist, title, etc.) is unknown. For example, after hearing a song on the radio, a person may wish to find the song on the Internet. If the person recalls the melody but does not know the name of the song, lyrics from the song, or even the artist, it may be very difficult to find the song using traditional (e.g., text-based) search engines.
Some existing search engines may provide the capability to organize audio compositions based on metadata manually supplied to a database about the audio composition. For example, it may be possible to provide a database with information relating to a song's genre, tempo, pitch sequence, pitch interval sequence, release date, artist, etc. This information may then be used by traditional search engines to help locate the particular song. To provide this capability, however, requires manually (and often subjectively) determining information about the audio composition and storing the information to a database. This may be prone to inefficiencies, inaccuracies, and limitations regarding what types of information are available.
Some existing search engines may further provide the capability to extract metadata from certain types of audio files. For example, the MPEG-7 file format and other file formats may be configured to store certain types of information about the audio content. A search engine may then be able to extract that information, for example, from the file's header information.
Yet other existing search engines may provide the capability to group songs by one particular high-level pattern. For example, high-level rhythmic signatures may be extracted from the envelopes of the audio signals, and those high-level signatures may be used to group songs. This may eliminate the need to manually enter certain types of information, but may still limit the search. One limitation is that the search may be restricted to a single, non-textual dimension. For example, the user may only be able to search on rhythmic signature, while millions of songs may share similar rhythmic signatures. Another limitation is that the single dimension may not be sufficiently elemental to provide useful results. For example, the user may wish to hum the melody of the chorus or drum out a portion of the rhythm, neither of which may be searchable against high-level patterns.
For at least these reasons, it may be desirable to provide improved capabilities for music search.